For more information, contact k1yoshimura[at]ucsd.edu.
Adding CO2 as one of prognostic variables in G-RSM is done by followings:
In define.h, specify ntrac_=3 (for your information, ntrac=1 is vapor, ntrac=2 is dummy ozone)
Change following files in src/fcst. Diff result is attached below.
gbphys.F: 3 parts. (call new moninp)
gsmstep.F: 2 parts. The biggest change. (reading co2 surface flux)
moninp.F: 5 parts. (surface flux to atmosphere)
rdsig.F: 1 part. (constant initial value input)
subpgb.F: 4 parts. (co2 concentration output)
wriflx.F: 1 part. (co2 surface flux output)
zerflx.F: 1 part. (co2 surface flux reset)
Change src/share/idsdef.F: add "ids(119)=9" between ids(117) and ids(121).
Do following in src/sfcl.
copy fixrd.F as fixrd_clim.F. add line of "kpds(16)=51."
add "fixrd_clim.o" in Makefile(.in)
add "fixrd_clim.o" in src/sfcl_par/Makefile(.in)
Change src/include/comfphys.h: add "dqsfci1(LONF2S,LATG2S)" in "comfphys" block.
Re-compile everything ($ cd gsm ; make)
IMPORTANT NOTES
In output pgb files, CO2 concentration (unit: kg/kg) will be saved as cloud water (grib ID=153).
In output flx files, CO2 flux (unit: kgCO2/m2/s) will be saved as grib ID=119.
If you want to start constant value (default: 376 ppmv), change the number in src/fcst/rdsig.F
"transcom_nep_clim.grb" is read by default.
In easy simulation, you can start from constant value, but if you want realistic initial condition for CO2, it can be done using AIRS data. If you need the data, please contact k1yoshimura[at]ucsd.edu.
diff from the version of 2009-2-22:
Adding CO2 as one of prognostic variables in G-RSM is done by followings:
IMPORTANT NOTES
In easy simulation, you can start from constant value, but if you want realistic initial condition for CO2, it can be done using AIRS data. If you need the data, please contact k1yoshimura[at]ucsd.edu.
diff from the version of 2009-2-22: